home *** CD-ROM | disk | FTP | other *** search
/ Magnum One / Magnum One (Mid-American Digital) (Disc Manufacturing).iso / d7 / ap102.arc / AUTOPUMA.DOC < prev    next >
Text File  |  1991-04-17  |  34KB  |  991 lines

  1.  
  2.  
  3.  
  4.  
  5.  
  6.  
  7.                                                                      Page 1
  8.  
  9.  
  10.                                     AUTOPUMA
  11.                           Enhancement Script for Telix
  12.  
  13.      WHAT IS AUTOPUMA?
  14.  
  15.      Autopuma is a script that adds a number of trivial abilities to Telix,
  16.      such as exiting or disconnecting if Telix has not been used,
  17.      displaying incoming bells on the screen, and automatically starting
  18.      MPt/Puma and Bimodem downloads when the host begins sending.
  19.  
  20.  
  21.      WHY IS AUTOPUMA?
  22.  
  23.      Originally this script simply started Puma (since renamed to MPt)
  24.      downloads anytime the Puma string was sent by the host, as Telix
  25.      already does with Zmodem (hence the name, which I have never bothered
  26.      to change).  But I also have a small BBS on the same machine that I
  27.      use for downloads.  Often I would start a download from another BBS
  28.      then have to leave before the download finished.  I'd either have to
  29.      abort the download to bring up the  BBS, or leave with the download
  30.      still going, and wait until I got back to bring up the BBS.  I had
  31.      some kluges to bring up the board when the download finished, but they
  32.      required I remember to trigger them before I started the download.
  33.  
  34.      Since I already had this script running "in the background" all the
  35.      time anyway, I added the ability to monitor activity and bring up the
  36.      BBS after Telix was left unattended for some amount of time.  Then I
  37.      though it'd be nice if Telix brought up the board for an incoming
  38.      call.  I gave it to a friend who asked for a few more things, then I
  39.      needed more things...
  40.  
  41.  
  42.      FILES INCLUDED:
  43.  
  44.           AUTOPUMA.SLC   AUTOPUMA script ("resident" portion).
  45.           APCONFIG.SLC   Configuration script.
  46.           APSMALL.SLC    Small version of AUTOPUMA.SLC.
  47.           APSCNFG.SLC    Configuration script for APSMALL.SLC.
  48.           BIMODXFR.SLC   Used by Autopuma to start Bimodem transfers.
  49.           BIMODXMT.SLC   Bimodem upload script.
  50.           BIMODRCV.SLC   Bimodem download script.
  51.           BIMODEM.SLC    Script similar to that included with BIMOD124,
  52.                          with minor changes to allow compatibility with
  53.                          BIMODXMT/BIMODRCV.
  54.           BIMODEM.SLT    BIMODEM.SLC script source.
  55.           MPTXMT.SLC     MPt upload script.
  56.           MPTRCV.SLC     MPt download script.
  57.           PUMAXMT.SLC    Puma version of MPTXMT.
  58.           PUMARCV.SLC    Puma version of MPTRCV.
  59.           MPTXMT.SLT     MPTXMT.SLC script source.
  60.           MPTRCV.SLT     MPTRCV.SLC script source.
  61.  
  62.  
  63.  
  64.  
  65.  
  66.  
  67.  
  68.  
  69.  
  70.  
  71.  
  72.  
  73.                                                                      Page 2
  74.  
  75.           WHO.SLC        Tells who current/last connection was to.
  76.           AUTOPUMA.DOC   This file.
  77.           AUTOPUMA.WP5   WordPerfect 5.1 version of this file.
  78.  
  79.      The difference between the large and small versions is where the code
  80.      for Autopuma's configuration window resides.  This code takes up about
  81.      22K of RAM.  In the large version it resides in the AUTOPUMA.SLC
  82.      script, which gives faster response when changing the configuration,
  83.      but takes up memory you may need for things such as DOS shells and
  84.      external protocols.
  85.  
  86.      In the small version the configuration window code is in the
  87.      configuration script, making the resident portion smaller (and the
  88.      configuration script larger).  However the configuration window will
  89.      not respond as quickly as it does in the large version.
  90.  
  91.      Which version of Autopuma and the configuration script you use is up
  92.      to you.
  93.  
  94.  
  95.      INSTALLATION:
  96.  
  97.      Choose the version of AUTOPUMA.SLC and APCONFIG.SLC you want to use,
  98.      and copy them to the same directory as your other Telix scripts.  If
  99.      you use the small version of Autopuma rename APSMALL.SLC to
  100.      AUTOPUMA.SLC, and APSCONFIG.SLC to APCONFIG.SLC.  If you've never used
  101.      scripts before, press ALT-O from Telix and select "Filenames and
  102.      paths."  Select "C" and enter the directory you want to keep scripts
  103.      in.  Make sure you save it ("Write setup to disk") then get back to
  104.      DOS and copy the appropriate versions of AUTOPUMA.SLC and APCONFIG.SLC
  105.      to that directory.
  106.       
  107.      If you want Autopuma to run every time you run Telix, make a batch
  108.      file (for instance "TLX.BAT") that contains:
  109.  
  110.              TELIX SAUTOPUMA
  111.  
  112.      and run this batch file instead of TELIX.EXE.  To take advantage of
  113.      some Autopuma features you may eventually need to run Telix from a
  114.      batch file anyway.  More on this later.
  115.  
  116.      You may also want to define a key combination to run the configuration
  117.      script.  Press "ALT-K", select <R>egular key table, <E>dit, then
  118.      choose a key combination (I use ALT-N), and define it as:
  119.           @APCONFIG
  120.      or "@APSCNFG" if you use the small version of the configuration
  121.      script.
  122.  
  123.  
  124.      USING AUTOPUMA:
  125.  
  126.      Run Autopuma, either from the DOS command line with:
  127.  
  128.  
  129.  
  130.  
  131.  
  132.  
  133.  
  134.  
  135.  
  136.  
  137.  
  138.  
  139.                                                                      Page 3
  140.  
  141.              TELIX SAUTOPUMA
  142.  
  143.      or from within Telix by pressing ALT-G and giving AUTOPUMA as the
  144.      script to run.
  145.  
  146.      Run the configuration script (APCONFIG) with ALT-G from within Telix. 
  147.      This will bring up a window with Autopuma's available options.
  148.  
  149.      Options are:
  150.  
  151.        A - If phone rings once exit with....... 0
  152.  
  153.      If this is set to a non-0 value, and "RING" is received from the modem
  154.      when there is no carrier, Autopuma will exit Telix with that
  155.      errorlevel.  A batch file can use the errorlevel to bring up a BBS, or
  156.      some other software to handle incoming calls.
  157.  
  158.        B - If phone rings twice exit with...... 0
  159.  
  160.      If this is set to a non-0 value, Autopuma will wait for two rings to
  161.      come in from the modem, then exit from Telix with that errorlevel.  If
  162.      a second ring does not come in within 7 seconds of the first then
  163.      Telix will exit with the errorlevel given in option A if it has been
  164.      set.
  165.  
  166.        C - Exit on inactivity.................. After 20:00 with 100
  167.  
  168.      If the time limit is not 0 and Telix detects no local or comm port
  169.      activity within that time it will exit with given errorlevel.
  170.  
  171.        D - Time out even if carrier present?... No
  172.  
  173.      Usually Autopuma considers an active carrier as activity, and will not
  174.      exit Telix if one is present even if nothing else is going on.  If
  175.      this option is set to Yes, an active carrier alone will not be
  176.      considered activity, and Autopuma will exit Telix and hang up on an
  177.      active connection if nothing is received from the host and no local
  178.      activity is detected within the time limit given in option C.
  179.  
  180.        E - Hang up if no activity for.......... 0:00
  181.  
  182.      If this is set to a non-0 value and no activity occurs within that
  183.      time, Autopuma will drop any active carrier.
  184.  
  185.        F - Exit Telix on carrier loss.......... Off
  186.                                                 Once, with 100
  187.                                                 Always, with 100
  188.  
  189.      This will cause Telix to exit with the given errorlevel when the
  190.      carrier is lost.  I use this when I start a download and I know I
  191.      won't be around when it finishes to bring up the BBS (most decent
  192.      BBSes can be told to hang up after a transfer).  If the option is set
  193.  
  194.  
  195.  
  196.  
  197.  
  198.  
  199.  
  200.  
  201.  
  202.  
  203.  
  204.  
  205.                                                                      Page 4
  206.  
  207.      to "Once" and the exit is canceled, it will not reset, and the next
  208.      time a carrier drops Telix will not exit.  If set to "Always" and the
  209.      exit is canceled the option will reset, wait for another carrier, then
  210.      try to exit again when it drops.
  211.  
  212.        G - Letter for MPT/Puma protocol........ P
  213.  
  214.      This is the letter you have assigned to the MPt protocol in the Telix
  215.      "File transfer protocols" configuration.  If this is set and "Zmodem
  216.      auto-downloads" is enabled in Telix, Autopuma will begin a receive
  217.      with this protocol when a ^VPuma^V or ^VMPt^V string is received.
  218.  
  219.        H - Letter for Bimodem protocol......... B
  220.  
  221.      This is the letter you have assigned to the Bimodem protocol in the
  222.      Telix "File transfer protocols" configuration.  If this is set and
  223.      "Zmodem auto-downloads" is enabled in Telix, Autopuma will run the
  224.      BIMODXFR script when the Bimodem handshaking string is received, which
  225.      will prepare for a Bimodem transfer.  The delay controls how long
  226.      BIMODXFR will wait for a response to the "Filenames to upload" prompt. 
  227.      Bimodem transfers are discussed below.
  228.  
  229.        I - User defined string................. [none]
  230.  
  231.      This can be any string that, when received by Telix, should trigger
  232.      some action.
  233.  
  234.        J - User defined command................ [none]
  235.  
  236.      This is the action that the user-defined string will trigger.  The
  237.      available options are:
  238.  
  239.           EXIT [errorlevel]        Exits Telix with the errorlevel
  240.           HANGUP                   Hangs up the phone
  241.           SEND [text]              Sends text out the comm port
  242.           LOAD [file]              Loads a configuration file
  243.           SCRIPT [script]          Runs a SALT script
  244.           DOS [command]            Runs a DOS command in a sub-shell
  245.  
  246.      Anything else is considered a DOS command and will be executed from a
  247.      sub-shell.
  248.  
  249.        K - Visual bells........................ Off
  250.                                                 Always, 0.5 seconds
  251.                                                 If no sound, 0.5 seconds
  252.  
  253.      Autopuma can display "BELL!" in the center of the screen for a user-
  254.      selectable duration anytime a bell is received.  Useful for
  255.      environments where silence is required, but you still want to know
  256.      about beeps.
  257.  
  258.        L - Seconds to delay before exit........ 0:10
  259.  
  260.  
  261.  
  262.  
  263.  
  264.  
  265.  
  266.  
  267.  
  268.  
  269.  
  270.  
  271.                                                                      Page 5
  272.  
  273.      In most situations that trigger an exit from Telix, Autopuma will
  274.      display a countdown timer before exiting to allow a chance to abort. 
  275.      This sets the length of the delay.
  276.  
  277.        M - Show timer or clock on status line.. Neither
  278.                                                 Timer
  279.                                                 Clock Always
  280.                                                 Clock if no Timer
  281.  
  282.      If Telix status bar is enabled, Autopuma can display either the clock
  283.      time or the length of time Telix has been inactive in the area that
  284.      usually displays the script name.  "Timer" displays the timer if it's
  285.      relevant, otherwise the script name.  "Clock Always" displays the
  286.      current time.  "Clock if no Timer" will display the timer if relevant,
  287.      otherwise the current time is displayed.
  288.  
  289.  
  290.        N - Load options from disk.............. AUTOPUMA.CNF
  291.  
  292.      This allows you to recall previously saved Autopuma configurations
  293.      from a saved file.
  294.  
  295.        O - Save options to disk................ AUTOPUMA.CNF
  296.  
  297.      This will save the current Autopuma settings to a disk file.
  298.  
  299.        P - Unload Autopuma
  300.  
  301.      This removes Autopuma from memory
  302.  
  303.      There are two other options available from this menu that are not
  304.      displayed.  ALT-C will bring up a "color editor".  This allows you to
  305.      set the colors Autopuma uses to display the configuration window.  The
  306.      item to color is selected with up/down arrow, tab/shift tab, or
  307.      home/end.  Colors are selected with left/right arrow or the first
  308.      letter of the color.  The sample box will show what the colors will
  309.      look like.  Selecting "Set to saved Telix colors" will set the colors
  310.      to whatever was last saved in Telix "Screen and color" menu.  Note
  311.      that these color settings are not saved anywhere.  The next time
  312.      Autopuma loads it will revert to Telix' saved colors.  This feature
  313.      may be removed in the future.
  314.  
  315.      The other is ALT-ESC.  By default Autopuma disables the ESC key's
  316.      ability to abort scripts.  On some machines however this slows the
  317.      script down, sometimes intolerably.  ALT-ESC will toggle the
  318.      enabled/disabled state of the ESC key.  This may speed up Autopuma,
  319.      but will prompt you with "Abort Script?" whenever the ESC key is
  320.      pressed.  The state of the ESC key is saved to the Autopuma
  321.      configuration file.
  322.        
  323.  
  324.      MPT DOWNLOADS:
  325.  
  326.  
  327.  
  328.  
  329.  
  330.  
  331.  
  332.  
  333.  
  334.  
  335.  
  336.  
  337.                                                                      Page 6
  338.  
  339.      In order for Autopuma to start an MPt or Puma download, you must have
  340.      either PUMA.EXE 1.00, or MPT.EXE 1.10 or greater, and either batch
  341.      files or SALT scripts for performing the transfer from Telix.  MPt and
  342.      Puma scripts are provided, but you can use others if you have them. 
  343.      The protocol must be installed in Telix in the Configuration Options'
  344.      "Protocol Options" screen like this:
  345.  
  346.       Key   Protocol     Upload    Download   BAT or    DL
  347.               Name      Filename   Filename   Script   Name
  348.      -------------------------------------------------------
  349.        P   Puma/MPt     mptxmt     mptrcv     Script    N
  350.  
  351.  
  352.      BIMODEM TRANSFERS
  353.  
  354.      In order for Autopuma to start a Bimodem transfer, you must have
  355.      BIMODEM.EXE 1.24 or greater, and either batch files or SALT scripts
  356.      for performing Bimodem transfers from Telix.  The BIMODRCV.SLC and
  357.      BIMODXMT.SLC scripts are provided, but you can use others if you have
  358.      them.  The protocol must be installed in Telix in the Configuration
  359.      Options' "Protocol Options" screen like this:
  360.  
  361.       Key   Protocol     Upload    Download   BAT or    DL
  362.               Name      Filename   Filename   Script   Name
  363.      -------------------------------------------------------
  364.        B   Bimodem      bimodxmt   bimodrcv   Script    N
  365.  
  366.  
  367.      The BIMODXFR.SLC script is also required by Autopuma for automatic
  368.      Bimodem transfers.
  369.  
  370.      To explain why Autopuma initiates Bimodem transfers the way it does, a
  371.      short explanation of how it handles MPt downloads is required.
  372.  
  373.      Autopuma begins an MPt receive when it receives the handshake string
  374.      sent by an MPt protocol on the remote end that wants to send.  This
  375.      string is different than the handshake sent by an MPt that wishes to
  376.      receive, so there is no conflict.
  377.  
  378.      On the other hand, Bimodem can transfer files in both directions at
  379.      the same time, so there is no distinct sender or receiver.  Because of
  380.      this Bimodem has only one handshake string.  Autopuma can tell the
  381.      host wants to initiate a transfer, but has no way of knowing if it
  382.      should simply start a receive or if it should prompt for files to
  383.      upload.
  384.  
  385.      The approach it takes is this:  If a Bimodem transfer is initiated by
  386.      the remote computer, the user will be prompted to enter files to
  387.      upload.  If there is no response within the time set in Autopuma's
  388.      configuration, a download is assumed.  If files are entered an upload
  389.      is assumed.  
  390.  
  391.  
  392.  
  393.  
  394.  
  395.  
  396.  
  397.  
  398.  
  399.  
  400.  
  401.  
  402.  
  403.                                                                      Page 7
  404.  
  405.      BIMODXMT.SLC and BIMODRCV.SLC will perform Bimodem transfers.  Both
  406.      scripts require BIMODEM.EXE 1.24 or greater.  If a BIMODEM.PTH file
  407.      exists in the Telix directory it will be used in the transfer.  After
  408.      the transfer the scripts will ask if you want to delete BIMODEM.PTH. 
  409.      If there is no response and the transfer returned a successful status,
  410.      the file is deleted.  If the transfer failed, the file is retained.
  411.  
  412.      NOTE:  In the box Autopuma displays for entering filenames, strings of
  413.      up to 241 characters can be entered.  The Bimodem scripts included in
  414.      the Autopuma ZIP file will accept file lists this long, but other
  415.      Bimodem scripts will not.  If you use different scripts to drive
  416.      Bimodem the file list should not exceed the length of the window.
  417.  
  418.      BIMODEM.SLC is the same as the BIMODEM.SLC included in the Bimodem
  419.      distribution ZIP file, except it ensures that the BIMODEM.CFG and
  420.      BIMODEM.PTH files are created in the default Telix directory, which is
  421.      where BIMODXMT and BIMODRCV expect to find them.  This will allow you
  422.      to mark uploads (and on hosts that permit it, downloads) offline
  423.      through BiMenu, then connect to the host and start the transfer,
  424.      letting Autopuma start Bimodem automatically.
  425.  
  426.  
  427.      AUTOPUMA AND ERRORLEVELS:
  428.  
  429.      To be useful, any option that forces Telix to exit with an errorlevel
  430.      requires Telix to be run from a batch file that uses the "if
  431.      errorlevel" command to test the errorlevel and perform the appropriate
  432.      action.  For instance, if you want Telix to bring up a BBS if a call
  433.      comes in, you need to set "A - If phone rings once exit with......" to
  434.      a non-0 value (say, 100) and run Telix from a batch file that looks
  435.      like this:
  436.  
  437.         rem run Telix with AUTOPUMA
  438.         telix sautopuma
  439.         rem if returned 100 run command to start BBS ("board" in this case)
  440.         if errorlevel 100 board
  441.  
  442.      ENTERING VALUES IN THE CONFIG WINDOW:
  443.  
  444.      Values used as errorlevels cannot exceed 255.  Times cannot exceed
  445.      99:59:59.
  446.  
  447.      If you need to enter characters into string values that are usually
  448.      special (i.e. ENTER or ESC), press CTRL-V or CTRL-P, then the
  449.      character.   Characters that must be entered this way are ENTER, ESC,
  450.      all CTRL characters and any ANSI "ALT<number>" code.  The following
  451.      keys perform these functions:
  452.  
  453.      ENTER:              save changes and quit editing
  454.      ESC:                lose changes and quit editing
  455.      Right arrow/CTRL-D: right one position
  456.      Left arrow/CTRL-S:  left one position
  457.  
  458.  
  459.  
  460.  
  461.  
  462.  
  463.  
  464.  
  465.  
  466.  
  467.  
  468.  
  469.                                                                      Page 8
  470.  
  471.      CTRL-right/CTRL-F:  right one word
  472.      CTRL-left/CTRL-A:   left one word
  473.      HOME:               beginning of string
  474.      END:                end of string
  475.      DEL:                delete character at cursor
  476.      Backspace:          delete character left of cursor
  477.      CTRL-DEL:           delete from cursor to end of word
  478.      CTRL-Backspace:     delete from beginning of word to cursor
  479.      CTRL-END:           delete from cursor to end of line
  480.      CTRL-HOME:          delete from beginning of line to cursor
  481.      INSERT:             toggle insert mode
  482.      CTRL-P/CTRL-V:      insert special character
  483.      CTRL-Y:             clear entire line
  484.      CTRL-U:             undo all changes
  485.  
  486.      For numeric and time values:
  487.      Grey '+':           increment value by one
  488.      Grey '-':           decrement value by one
  489.  
  490.      For time values
  491.      CTRL-Grey '+':      increment by one minute
  492.      CTRL-Grey '-':      decrement by one minute
  493.      ALT-Grey '+':       increment by one hour
  494.      ALT-Grey '-':       decrement by one hour
  495.  
  496.  
  497.      CONFIGURING VIA THE ENVIRONMENT:
  498.  
  499.      Autopuma can also be configured partially or entirely through the
  500.      environment rather than a disk file.  The variable AUTOPUMA can be set
  501.      to a string of options that tell Autopuma what to do.  The easiest way
  502.      to create the configuration string is to configure Autopuma through
  503.      the configuration window, save the configuration to a file, then copy
  504.      the configuration file into your batch file (or wherever).  The config
  505.      file is formatted as SET AUTOPUMA=<config string> to allow just that.
  506.      If you want to edit or create the string yourself, the format is:
  507.  
  508.  
  509.         SET AUTOPUMA=[option[:arg1][,arg2]...]...
  510.  
  511.      Options and their arguments are:
  512.  
  513.      R1X:<errorlevel>
  514.           <errorlevel> is the errorlevel Telix should exit with when one
  515.           ring is received.
  516.  
  517.      R2X:<errorlevel>
  518.           <errorlevel> is the errorlevel Telix should exit with when two    
  519.           rings are received.
  520.  
  521.      TOT:<time>,<errorlevel>
  522.  
  523.  
  524.  
  525.  
  526.  
  527.  
  528.  
  529.  
  530.  
  531.  
  532.  
  533.  
  534.  
  535.                                                                      Page 9
  536.  
  537.           <time> is the length of inactivity after which Autopuma will
  538.           force Telix to exit.  <Errorlevel> is the errorlevel Telix will
  539.           exit with.
  540.  
  541.      IC[:switch]
  542.           IC tells Autopuma to ignore a carrier.  Autopuma will exit after
  543.           inactivity (if that option is set) whether a carrier is present
  544.           or not.  <switch> may be 0 (off) or 1 (on), or omitted, which is
  545.           assumed to be 1.
  546.  
  547.      DCT:<time>
  548.           Sets amount of inactivity after which Autopuma will hang up on a
  549.           live connection.
  550.  
  551.      ECL[:switch]
  552.           Tells Autopuma whether or not to exit when a carrier drops. 
  553.           Switch can be:
  554.              0 - do not exit
  555.              1 - once
  556.              2 - always
  557.              If ECL is not followed by any value, 2 is assumed.
  558.  
  559.      ECLX:<errorlevel>
  560.           <errorlevel> is the errorlevel Telix will return if it exits due
  561.           to a carrier drop.
  562.  
  563.      PKEY:<letter>
  564.           <letter> is the letter that has been assigned to the Puma/MPt
  565.           protocol in Telix' "File transfer protocols" configuration.
  566.  
  567.      BKEY:<letter>
  568.           <letter> is the letter that has been assigned to the Bimodem
  569.           protocol in Telix' "File transfer protocols" configuration.
  570.  
  571.      BDLY:<seconds>
  572.           <seconds> is the number of seconds that Autopuma will display the
  573.           upload filename prompt box before it continues with what it
  574.           assumes is a Bimodem receive.
  575.  
  576.      UDS:<string>
  577.           <string> is the string that, if received by Telix, will cause the
  578.           user-defined string to be executed.  The string can contain any
  579.           characters, but the following characters have special meaning to
  580.           Autopuma and must be quoted:
  581.  
  582.              " (double quote)
  583.              ' (single quote)
  584.              , (comma)
  585.              ^ (caret)
  586.              (space)
  587.  
  588.  
  589.  
  590.  
  591.  
  592.  
  593.  
  594.  
  595.  
  596.  
  597.  
  598.  
  599.  
  600.  
  601.                                                                     Page 10
  602.  
  603.           Characters are quoted by either enclosing the character in double
  604.           or single quotes, or immediately preceding the character with a
  605.           caret (^).  The string Enter name (i.e., "Joe Smith") contains
  606.           spaces, a comma, and quotes that must be quoted.  This can be
  607.           done several ways:
  608.  
  609.              'Enter name (i.e., "Joe Smith")'
  610.              <entire string in single quotes>
  611.  
  612.              "Enter name (i.e., ^"Joe Smith^")"
  613.              <entire string in double quotes, with internal double quotes
  614.              preceded by carets>
  615.  
  616.              Enter^ name^ (i.e.^,^ ^"Joe^ Smith^")
  617.              <all spaces, quotes, and comma preceded by carets>
  618.  
  619.      Control characters can be represented by a caret followed by a letter,
  620.      such as "^A" to represent CTRL-A.  Characters above ASCII 127 must be
  621.      typed using ANSI.SYS' "ALT<keypad>" convention in an editor that
  622.      accepts high ASCII characters.
  623.  
  624.      UDC:<string>
  625.           <string> is the command that will be executed if the user-defined
  626.           string is received by Telix.  It's entered and quoted the same as
  627.           the user defined string.
  628.  
  629.      VB[:switch]
  630.           Controls whether or not incoming bells are displayed.  <switch>
  631.           can be:
  632.  
  633.              0 - bells are not displayed
  634.              1 - bells are displayed only if sound is off
  635.              2 - bells are displayed whether sound is off or not.
  636.           If VB is not followed by any value, 1 is assumed.
  637.  
  638.      DLY:<time>
  639.           <time> is the amount of time Autopuma will delay before exiting
  640.           from Telix.
  641.  
  642.      ST:<switch>
  643.           Controls whether Autopuma displays the clock or timer on Telix'
  644.           status line.  <switch> may be:
  645.  
  646.              0 - display neither
  647.              1 - display timer if relevant; otherwise nothing
  648.              2 - display clock
  649.              3 - display timer if relevant; otherwise clock.
  650.  
  651.      CLR:<border>,<text>,<highlight>,<inverse>
  652.           Sets the colors Autopuma uses to display the configuration
  653.           window.
  654.  
  655.  
  656.  
  657.  
  658.  
  659.  
  660.  
  661.  
  662.  
  663.  
  664.  
  665.  
  666.  
  667.                                                                     Page 11
  668.  
  669.              <border> - Configuration window border
  670.              <text> - Normal configuration window text
  671.              <highlight> - Highlighted text
  672.              <inverse> - Inverse video
  673.  
  674.           Each color is a number calculated as (foreground + background *
  675.           16).  Color values are:
  676.  
  677.              00 Black
  678.              01 Blue
  679.              02 Green
  680.              03 Cyan
  681.              04 Red
  682.              05 Magenta
  683.              06 Brown
  684.              07 Light grey
  685.              08 Dark grey
  686.              09 Light blue
  687.              10 Light green
  688.              11 Light cyan
  689.              12 Light red
  690.              13 Light magenta
  691.              14 Yellow
  692.              15 White
  693.  
  694.           Since most machines display background colors 8 or higher as
  695.           blinking versions of the lower colors, the color editor does not
  696.           allow them to be used as background colors (neither does Telix). 
  697.           However no checks are done on numbers read from the configuration
  698.           file, so you can pick blinking colors this way if you want.
  699.  
  700.           Note that Autopuma doesn't save color settings in configuration
  701.           files itself.  This option is used by scripts that communicate
  702.           with Autopuma.
  703.  
  704.      CFN:<filename>
  705.           This specifies the file from which Autopuma will read and write
  706.           configuration information.  When this option is encountered in a
  707.           configuration string, Autopuma reads the contents of that file
  708.           and sets the configuration to it before continuing with the
  709.           original configuration information.
  710.  
  711.  
  712.      RENAMING AUTOPUMA
  713.  
  714.           If you want to name the AUTOPUMA.SLC to something else you must
  715.           also set the environment variable APNAME to the new script name
  716.           to allow APCONFIG to get the current settings.  Type at the
  717.           command line or add to your batch file:
  718.  
  719.              SET APNAME=<name of autopuma script file>
  720.  
  721.  
  722.  
  723.  
  724.  
  725.  
  726.  
  727.  
  728.  
  729.  
  730.  
  731.  
  732.  
  733.                                                                     Page 12
  734.  
  735.      The WHO script:
  736.  
  737.      This is an unremarkable script that will tell you what entry in your
  738.      dialing directory you are currently connected to.  However if AUTOPUMA
  739.      has been loaded WHO will also tell you who you were just connected to,
  740.      even if the connection has dropped.  Telix does not store this
  741.      information once the connection is lost, but Autopuma does and WHO can
  742.      ask Autopuma for it.  WHO also displays the information in Autopuma's
  743.      current colors.
  744.  
  745.  
  746.      DISCLAIMER:
  747.  
  748.      AUTOPUMA is provided on an "as is" basis without warranty of any kind,
  749.      expressed or implied, including but not limited to the implied
  750.      warranties of merchantability and fitness for a particular purpose.
  751.      The person using the software bears all risk as to the quality and
  752.      performance of the software.  Should the software prove defective, the
  753.      user assumes the entire cost of all necessary repair, servicing, or
  754.      correction.  The author will not be liable for any special,
  755.      incidental, consequential, indirect or  similar damages due to loss of
  756.      data or any other reason, even if the  author or an agent of the
  757.      author has been advised of the possibility of such damages.  In no
  758.      event shall the author's liability for any damages ever exceed the
  759.      price paid for the license to use the software, regardless of the form
  760.      of the claim. 
  761.  
  762.  
  763.      REVISION HISTORY:
  764.  
  765.      Version 1.02, April 16:
  766.  
  767.           Added a version of Erik Labs BIMODEM.SLC script with
  768.           modifications to make it compatible with BIMODXMT and BIMODRCV.
  769.  
  770.           Modified BIMODXFR and AUTOPUMA to allow BIMODXFR to exit
  771.           gracefully if it was run some way other than from AUTOPUMA.
  772.  
  773.           Corrected problem in small version of Autopuma that would ignore
  774.           "Exit on carrier loss" if it was set to "Once".
  775.  
  776.           Configuration script for small version was displaying it's
  777.           initial "Please wait" message in black on black colors.  Fixed.
  778.  
  779.           Included separate Puma versions of the MPt script for Puma users.
  780.  
  781.           Renamed the Autopuma scripts a little to (hopefully) clarify the
  782.           difference between the large and small versions.
  783.  
  784.      Version 1.01, April 12:
  785.  
  786.  
  787.  
  788.  
  789.  
  790.  
  791.  
  792.  
  793.  
  794.  
  795.  
  796.  
  797.  
  798.  
  799.                                                                     Page 13
  800.  
  801.           Changed the name of the PUMA*.SLT scripts to MPT*.SLT, since that
  802.           is the current name of the protocol.  AUTOPUMA remains AUTOPUMA,
  803.           until I think of something better.
  804.  
  805.           MPt scripts will sound alarms when the transfer completes,
  806.           similar to the alarm Telix uses when it's internal protocols
  807.           complete a transfer.
  808.  
  809.           Added support for Bimodem protocol, and Bimodem scripts.
  810.  
  811.           Autopuma now reads default colors from TELIX.CNF on startup. 
  812.           Removed color editor from menu, but left it accessible via ALT-C. 
  813.           Colors are no longer saved in Autopuma configuration files.
  814.  
  815.           Eliminated unnecessary redrawing by the text entry function,
  816.           reducing flicker.
  817.  
  818.           Time values were accepting times like "10:::::".  Though it
  819.           wasn't doing any harm, it's been fixed.
  820.  
  821.           Text entry function did not allow most legal special characters
  822.           to be used in file names.  Fixed.
  823.  
  824.      Version 1.00, March 16 1991:  Initial release.
  825.  
  826.  
  827.      ANYTHING ELSE?
  828.  
  829.      There is no charge for private, non-commercial use of AUTOPUMA (but if
  830.      you send a check anyway it won't go uncashed).  Comments, requests,
  831.      and suggestions for a better name for this script can be left at:
  832.  
  833.              The Dead of Night BBS
  834.              (703) 644-7667
  835.  
  836.      or mailed to:
  837.  
  838.              Donald Mehrtens
  839.              5923 Minuteman Rd
  840.              Springfield VA 22152
  841.  
  842.      or sent via CompuServe (which I don't check very often) to ID
  843.      72361,1407.
  844.  
  845.      CAVEATS:
  846.  
  847.      There is no direct way to test if a local key has been struck without
  848.      interfering with Telix's ability to process that key.  However most
  849.      local Telix functions momentarily stop the script, and this can be
  850.      detected.  This means individual keystrokes may not always register as
  851.      activity to Autopuma, but any local activity that takes more than a
  852.  
  853.  
  854.  
  855.  
  856.  
  857.  
  858.  
  859.  
  860.  
  861.  
  862.  
  863.  
  864.  
  865.                                                                     Page 14
  866.  
  867.      couple of seconds will register, and characters coming in from the
  868.      comm port will keep the timer resetting.
  869.  
  870.      If using the small version of Autopuma while running Telix under
  871.      Windows, and the PIF file is set to "Detect Idle Time" Telix may take
  872.      excessively long to bring up the configuration window.  On my Compaq
  873.      386/20 it takes upwards of 2 minutes.  Make sure Detect Idle Time is
  874.      off or use the large version of Autopuma under Windows if you have
  875.      this problem.
  876.  
  877.  
  878.      ACKNOWLEDGEMENTS:
  879.  
  880.      Thanks to Bob Price for his help and suggestions; To Lori Davis, for
  881.      her help with this documentation (we programmers don't speak good
  882.      English); and to Colin Sampaleanu for a great comm program.
  883.  
  884.  
  885.      SALT Programmers, HELP!
  886.  
  887.      Is there any way for a script to determine its own name, as DOS batch
  888.      files can do with %0 or C programs can do with argv[0]?
  889.  
  890.      Can a script find out how many and/or what types of arguments the
  891.      main () function was actually passed, so that a script that needs
  892.      arguments can GRACEFULLY exit if it wasn't given any?  Is there
  893.      something similar to C's argc?
  894.  
  895.      As of v3.15 (possibly sooner) the SALT compiler has a "void" keyword. 
  896.      What does it do?
  897.  
  898.      The script runs considerably slower if _scr_chk_key is set to 0 to
  899.      disable the ESC key from prompting to abort the script.  Can anything
  900.      be done about this?  Can the ESC key be prevented from aborting
  901.      scripts without using _scr_chk_key?
  902.  
  903.      Is there any way to find out whether the cursor is on or off?
  904.  
  905.      Is there a cleaner way to find out if the status bar is on than to
  906.      look on the screen for it with vgetchr/vgetstr?
  907.  
  908.      Is there a way to see if a local key has been hit without destroying
  909.      the terminal() function's ability to process it, like cinp_count()
  910.      does with the comm port?
  911.  
  912.      Despite the fact that Telix does not appear able to do anything with
  913.      them, CS will happily compile a script that has no main() function. 
  914.      Is this of any use?
  915.  
  916.      Can a script find out which dialing directory entries are marked?  Can
  917.      a script mark and unmark entries?
  918.  
  919.  
  920.  
  921.  
  922.  
  923.  
  924.  
  925.  
  926.  
  927.  
  928.  
  929.  
  930.  
  931.                                                                     Page 15
  932.  
  933.      And does ANYBODY know ANYTHING about Telix 4.0?
  934.  
  935.  
  936.  
  937.  
  938.  
  939.  
  940.  
  941.  
  942.  
  943.  
  944.  
  945.  
  946.  
  947.  
  948.  
  949.  
  950.  
  951.  
  952.  
  953.  
  954.  
  955.  
  956.  
  957.  
  958.  
  959.  
  960.  
  961.  
  962.  
  963.  
  964.  
  965.  
  966.  
  967.  
  968.  
  969.  
  970.  
  971.  
  972.  
  973.  
  974.  
  975.  
  976.  
  977.  
  978.  
  979.  
  980.  
  981.  
  982.  
  983.  
  984.  
  985.  
  986.  
  987.  
  988.  
  989.  
  990.  
  991.